package com.xyy.saas.payment.cores.enums;

public enum YzhBankPayStatusEnum {
    /**
     * 银行卡支付流水状态
     */
    DEALING("0", "BANK处理中", BankPayStatusEnum.DEALING),
    SUSPEND("4", "暂停处理", BankPayStatusEnum.SUSPEND),
    SUCCESS("1", "成功", BankPayStatusEnum.SUCCESS),
    REFUNDED("9", "退汇", BankPayStatusEnum.REFUNDED),
    FAIL("2", "失败", BankPayStatusEnum.FAIL),
    SUSPEND_TO_FAIL("15", "挂单后取消", BankPayStatusEnum.FAIL),
    ;
    private String status;
    private String desc;
    private BankPayStatusEnum bankPayStatus;

    YzhBankPayStatusEnum(String status, String desc, BankPayStatusEnum bankPayStatus) {
        this.status = status;
        this.desc = desc;
        this.bankPayStatus = bankPayStatus;
    }

    /**
     * 根据code查询
     *
     * @param status status
     * @return BankPayStatusEnum
     */
    public static YzhBankPayStatusEnum fromCode(String status) {
        for (YzhBankPayStatusEnum o : YzhBankPayStatusEnum.values()) {
            if (o.getStatus().equals(status)) {
                return o;
            }
        }
        return null;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getDesc() {
        return desc;
    }

    public void setDesc(String desc) {
        this.desc = desc;
    }

    public BankPayStatusEnum getBankPayStatus() {
        return bankPayStatus;
    }

    public void setBankPayStatus(BankPayStatusEnum bankPayStatus) {
        this.bankPayStatus = bankPayStatus;
    }
}
